The embodiments disclosed within this specification relate to computer programming. More particularly, the embodiments relate to integrated development environments (IDE's).
An IDE is a software application that provides comprehensive facilities to computer programmers that are used for software development. An IDE typically present a single application in which the computer program is being developed. This application typically provides many features for authoring, modifying, compiling, deploying and debugging software. In this regard, an IDE normally includes a source code editor, a compiler and/or an interpreter, build automation tools, and a debugger. These tools provide a great deal of functionality designed to improve the efficiency of the computer programmer when developing an application.
An IDE abstracts the configuration necessary to piece together command line utilities in a cohesive unit, which theoretically reduces the time to learn a language, and increases productivity of a computer programmer (e.g., a software developer). It is also thought that the tight integration of development tasks can further increase productivity. For example, code can be compiled while being written, providing instant feedback on syntax errors. In addition, many IDE's allow the programmer to view references to variables used in a computer program, and show where the variables occur in a given class, typically by highlighting their locations next to a scrollbar in an editor. Other tools allow the programmer view where a variable is referenced throughout an application.